#pragma once

#include "../Geometry/Plane.hpp"
#include "../Material/Material.hpp"
#include "../Renderer/MeshRenderer.hpp"
#include "Application.hpp"

class SandBox : public App::Application {
public:
  void keyboardEvent(const Data::KeyboardEvent &event) override;

  void windowSizeChanged(int w, int h) override;

  void render() override;

  void mouseEvent(const Data::MouseEvent &event) override;

  void setup() override;

  void renderEnd() override;

  void renderStart() override;

  void windowFocused() override;

  void onGuiRender() override;

public:
public:
  ~SandBox() override;
};